// // 小程序开发api接口工具包，https://github.com/gooking/wxapi
// const CONFIG = require('./config.js')
// const TOKEN = require('./token.js')

// const request = (url, needAuthorize, method, data) => {
//   let _url = CONFIG.subDomain + url
//   let _header = needAuthorize 
//     ? { 'Authorization': 'Bearer ' + TOKEN.getToken() } 
//     : { 'Content-Type': 'application/x-www-form-urlencoded'};
//   return new Promise((resolve, reject) => {
//     wx.request({
//       url: _url,
//       method: method,
//       data: data,
//       dataType:'json',
//       header: _header,
//       success(request) {
//         resolve(request.data)
//       },
//       fail(error) {
//         reject(error)
//       },
//       complete(data) {
//         // 加载完成
//       }
//     })
//   })
// }

// /**
//  * 小程序的promise没有finally方法，自己扩展下
//  */
// Promise.prototype.finally = function (callback) {
//   debugger;
//   var Promise = this.constructor;
//   return this.then(
//     function (value) {
//       Promise.resolve(callback()).then(
//         function () {
//           return value;
//         }
//       );
//     },
//     function (reason) {
//       Promise.resolve(callback()).then(
//         function () {
//           throw reason;
//         }
//       );
//     }
//   );
// }

// module.exports = {
//   request,
//   shareGroupGetScore: (referrer, encryptedData, iv) => {
//     // return request('/score/share/wxa/group', true, 'post', {
//     //   referrer,
//     //   encryptedData,
//     //   iv
//     // })
//   },
//   login: (code) => {
//     return request('/api/weixin/MiniProgram/Login', true, 'POST', code)
//   },

  
//   queryMobileLocation: (data) => {
//     return request('/common/mobile-segment/location', false, 'get', data)
//   },
//   queryConfig: (data) => {
//     return request('/config/get-value', true, 'get', data)
//   },
//   scoreRules: (data) => {
//     return request('/score/send/rule', true, 'post', data)
//   },
//   scoreSign: (token) => {
//     return request('/score/sign', true, 'post', {
//       token
//     })
//   },
//   scoreSignLogs: (data) => {
//     return request('/score/sign/logs', true, 'post', data)
//   },
//   scoreTodaySignedInfo: (token) => {
//     return request('/score/today-signed', true, 'get', {
//       token
//     })
//   },
//   scoreExchange: (number, token) => {
//     return request('/score/exchange', true, 'post', {
//       number,
//       token
//     })
//   },
//   scoreLogs: (data) => {
//     return request('/score/logs', true, 'post', data)
//   },

//   kanjiaList: (data) => {
//     return request('/shop/goods/kanjia/list', true, 'post', data)
//   },
//   kanjiaSet: (goodsId) => {
//     return request('/shop/goods/kanjia/set', true, 'get', { goodsId })
//   },
//   kanjiaJoin: (kjid, token) => {
//     return request('/shop/goods/kanjia/join', true, 'post', {
//       kjid,
//       token
//     })
//   },
//   kanjiaDetail: (kjid, joiner) => {
//     return request('/shop/goods/kanjia/info', true, 'get', {
//       kjid,
//       joiner
//     })
//   },
//   kanjiaHelp: (kjid, joiner, token, remark) => {
//     return request('/shop/goods/kanjia/help', true, 'post', {
//       kjid,
//       joinerUser: joiner,
//       token,
//       remark
//     })
//   },
//   kanjiaHelpDetail: (kjid, joiner, token) => {
//     return request('/shop/goods/kanjia/myHelp', true, 'get', {
//       kjid,
//       joinerUser: joiner,
//       token
//     })
//   },
  
//   addTempleMsgFormid: (data) => {
//     return request('/template-msg/wxa/formId', true, 'post', data)
//   },
//   sendTempleMsg: (data) => {
//     return request('/template-msg/put', true, 'post', data)
//   },
//   wxpay: (data) => {
//     return request('/pay/wx/wxapp', true, 'post', data)
//   },
//   alipay: (data) => {
//     return request('/pay/alipay/semiAutomatic/payurl', true, 'post', data)
//   },

//   register: (data) => {
//     return request('/user/wxapp/register/complex', true, 'post', data)
//   },
//   banners: (data) => {
//     return request('/banner/list', true, 'get', data)
//   },
//   goodsCategory: () => {
//     return request('/shop/goods/category/all', true, 'get')
//   },
//   goods: (data) => {
//     return request('/shop/goods/list', true, 'post', data)
//   },
//   goodsDetail: (id) => {
//     return request('/shop/goods/detail', true, 'get', {
//       id
//     })
//   },
//   goodsPrice: (data) => {
//     return request('/shop/goods/price', true, 'post', data)
//   },
//   goodsReputation: (data) => {
//     return request('/shop/goods/reputation', true, 'post', data)
//   },
//   coupons: (data) => {
//     return request('/discounts/coupons', true, 'get', data)
//   },
//   couponDetail: (id) => {
//     return request('/discounts/detail', true, 'get', {
//       id
//     })
//   },
//   myCoupons: (data) => {
//     return request('/discounts/my', true, 'get', data)
//   },
//   fetchCoupons: (data) => {
//     return request('/discounts/fetch', true, 'post', data)
//   },
//   noticeList: (data) => {
//     return request('/notice/list', true, 'post', data)
//   },
//   noticeDetail: (id) => {
//     return request('/notice/detail', true, 'get', {
//       id
//     })
//   },
//   addAddress: (data) => {
//     return request('/user/shipping-address/add', true, 'post', data)
//   },
//   updateAddress: (data) => {
//     return request('/user/shipping-address/update', true, 'post', data)
//   },
//   deleteAddress: (id, token) => {
//     return request('/user/shipping-address/delete', true, 'post', {
//       id,
//       token
//     })
//   },
//   queryAddress: (token) => {
//     return request('/user/shipping-address/list', true, 'get', {
//       token
//     })
//   },
//   defaultAddress: (token) => {
//     return request('/user/shipping-address/default', true, 'get', {
//       token
//     })
//   },
//   addressDetail: (id, token) => {
//     return request('/user/shipping-address/detail', true, 'get', {
//       id,
//       token
//     })
//   },
//   pingtuanSet: (goodsId) => {
//     return request('/shop/goods/pingtuan/set', true, 'get', {
//       goodsId
//     })
//   },
//   pingtuanOpen: (goodsId, token) => {
//     return request('/shop/goods/pingtuan/open', true, 'post', {
//       goodsId,
//       token
//     })
//   },
//   pingtuanList: (goodsId) => {
//     return request('/shop/goods/pingtuan/list', true, 'get', {
//       goodsId
//     })
//   },
//   videoDetail: (videoId) => {
//     return request('/media/video/detail', true, 'get', {
//       videoId
//     })
//   },
//   bindMobile: (data) => {
//     return request('/user/wxapp/bindMobile', true, 'post', data)
//   },
//   userDetail: (token) => {
//     return request('/user/detail', true, 'get', {
//       token
//     })
//   },
//   userAmount: (token) => {
//     return request('/user/amount', true, 'get', {
//       token
//     })
//   },
//   orderCreate: (data) => {
//     return request('/order/create', true, 'post', data)
//   },
//   orderList: (data) => {
//     return request('/order/list', true, 'post', data)
//   },
//   orderDetail: (id, token) => {
//     return request('/order/detail', true, 'get', {
//       id,
//       token
//     })
//   },
//   orderDelivery: (orderId, token) => {
//     return request('/order/delivery', true, 'post', {
//       orderId,
//       token
//     })
//   },
//   orderReputation: (data) => {
//     return request('/order/reputation', true, 'post', data)
//   },
//   orderClose: (orderId, token) => {
//     return request('/order/close', true, 'post', {
//       orderId,
//       token
//     })
//   },
//   orderPay: (orderId, token) => {
//     return request('/order/pay', true, 'post', {
//       orderId,
//       token
//     })
//   },
//   orderStatistics: (token) => {
//     return request('/order/statistics', true, 'get', {
//       token
//     })
//   },
//   withDrawApply: (money, token) => {
//     return request('/user/withDraw/apply', true, 'post', {
//       money,
//       token
//     })
//   },
//   province: () => {
//     return request('/common/region/v2/province', false, 'get')
//   },
//   nextRegion: (pid) => {
//     return request('/common/region/v2/child', false, 'get', {
//       pid
//     })
//   },
//   cashLogs: (data) => {
//     return request('/user/cashLog', true, 'post', data)
//   },
//   rechargeSendRules: () => {
//     return request('/user/recharge/send/rule', true, 'get')
//   },
//   payBillDiscounts: () => {
//     return request('/payBill/discounts', true, 'get')
//   },
//   payBill: (data) => {
//     return request('/payBill/pay', true, 'post', data)
//   },
//   vipLevel: () => {
//     return request('/config/vipLevel', true, 'get')
//   },
//   fxApply: (token, name, mobile) => {
//     return request('/saleDistribution/apply', true, 'post', { token, name, mobile })
//   },
//   fxApplyProgress: (token) => {
//     return request('/saleDistribution/apply/progress', true, 'get', { token })
//   },
//   fxMembers: (data) => {
//     return request('/saleDistribution/members', true, 'post', data)
//   },
//   fxCommisionLog: (data) => {
//     return request('/saleDistribution/commision/log', true, 'post', data)
//   },
//   wxaQrcode: (data) => {
//     return request('/qrcode/wxa/unlimit', true, 'post', data)
//   }
// }